<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../Vue全家桶_stu/03_依赖包/vue.js"></script>
</head>

<body>
    <script>
        let vm = {}
        let data = {}
        // Object.defineProperty()方法会直接在一个对象上定义一个新属性，或者修改一个对象的现有属性，并返回此对象。
        //接收三个参数 1.要定义属性的对象 2.要定义或修改的属性的名称 3.要定义或修改的属性描述符
        Object.defineProperty(data, 'mes', {
            //获取指定属性时触发
            get() {
                console.log('正在获取')
                return vm.mes
            },
            //修改指定属性时触发
            //接收的参数为要修改的值
            set(value) {
                console.log('正在被修改')
                vm.mes = value
            }
        })

        data.mes = '设置data的mes属性'
        console.log(vm.mes)
        console.log(data.mes)
    </script>
</body>

</html>